package com.douqu.game.core.config.challenge;

import com.douqu.game.core.config.common.CommonData;
import com.douqu.game.core.entity.GameObject;
import com.douqu.game.core.util.LoadUtils;
import com.douqu.game.core.util.LogUtils;

/**
 * @author wangzhenfei
 *         2017-11-28 15:28
 *         卡组战斗参数配置
 */
public class CardParamConfig extends GameObject{

    /** 主将 */
    public int level;
//    public int atk;
//    public int def;
//    public int hp;
//    public int cri;
//    public int rec;
//    public int add;
//    public int exd;
//    public int hit;
//    public int eva;
    /**
     *  怪物等级
     *   1.等级
         2.星级
         3.装备强化等级
         4.装备进阶等级
         5.法宝强化等级
         6.法宝升阶等级
     填为0代表不计算该部分属性
     * */
    public int[] cardParams;

    /**
     * 属性
     */
    public CommonData[] paraments;

    @Override
    public boolean check()
    {
        if(cardParams == null || cardParams.length != 14)
        {
            LogUtils.error(getClass().getSimpleName() + " Load CardParamConfig cardParams is null! id:" + id);
            return false;
        }
        if (paraments == null){
            LogUtils.error(getClass().getSimpleName() + " Load CardParamConfig paraments is null! id:" + id);
            return false;
        }
        return true;
    }

//    public long getExtAtt(int key)
//    {
//        if(E_Attribute.ATK.getCode() == key)
//            return atk;
//        else if(E_Attribute.DEF.getCode() == key)
//            return def;
//        else if(E_Attribute.HP.getCode() == key)
//            return hp;
//        else if(E_Attribute.CRI.getCode() == key)
//            return cri;
//        else if(E_Attribute.REC.getCode() == key)
//            return rec;
//        else if(E_Attribute.ADD.getCode() == key)
//            return add;
//        else if(E_Attribute.EXD.getCode() == key)
//            return exd;
//        else if(E_Attribute.HIT.getCode() == key)
//            return hit;
//        else if(E_Attribute.EVA.getCode() == key)
//            return eva;
//
//        return 0;
//    }

    @Override
    public boolean setVariable(String key, String value)
    {
       if("cardParams".equals(key))
        {
            cardParams = LoadUtils.loadIntArray(key, value);
            return true;
        }
       else if ("paraments".equals(key)){
           paraments = LoadUtils.loadCommonDataToArray(key, value);
           return true;
       }
        else
            return super.setVariable(key, value);
    }


}
